package Entities;

import java.io.Serializable;
import java.sql.Date;
import java.util.List;

import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.OneToMany;
import javax.persistence.OneToOne;
import javax.persistence.Table;

@Entity
@Table(name = "Caja")
public class Entity_Caja implements Serializable{

	private static final long serialVersionUID = 1L;
	@Id
	@GeneratedValue
	@Column(name = "id_caja")
	private int idCaja;
	@Column
	private int cantCupones;
	@Column
	private Date ultimaFechaCierre;
	@OneToMany(cascade = CascadeType.ALL)
	@JoinColumn(name = "id_caja")
	private List<Entity_Reserva> reservas;
	@OneToOne(cascade = CascadeType.ALL)
	@JoinColumn(name = "id_empleado")
	private Entity_Encargado encargado;
	@OneToMany(cascade = CascadeType.ALL)
	@JoinColumn(name = "id_caja")
	private List<Entity_Factura> facturas;
	
	
	//GET & SET
	public int getCantCupones() {
		return cantCupones;
	}
	public void setCantCupones(int cantCupones) {
		this.cantCupones = cantCupones;
	}
	public int getIdCaja() {
		return idCaja;
	}
	public void setIdCaja(int idCaja) {
		this.idCaja = idCaja;
	}
	
	public Date getUltimaFechaCierre() {
		return ultimaFechaCierre;
	}
	public void setUltimaFechaCierre(Date ultimaFechaCierre) {
		this.ultimaFechaCierre = ultimaFechaCierre;
	}
	public List<Entity_Reserva> getReservas() {
		return reservas;
	}
	public void setReservas(List<Entity_Reserva> reservas) {
		this.reservas = reservas;
	}
	public Entity_Encargado getEncargado() {
		return encargado;
	}
	public void setEncargado(Entity_Encargado encargado) {
		this.encargado = encargado;
	}
	public List<Entity_Factura> getFacturas() {
		return facturas;
	}
	public void setFacturas(List<Entity_Factura> facturas) {
		this.facturas = facturas;
	}
	
	

}